Development of a Prolog Tracer by Stepwise Enhancement
نویسندگان
چکیده
A Prolog tracer is essentially a Prolog interpreter extended to provide features, such as retry, fail, leap, skip, and quasi-skip, to trace the computational ow of a program. This paper describes how a Prolog tracer may be built by stepwise enhancement. Using this method, rst a collection of partial-tracers are developed, each partial-tracer providing only a part of the tracer's functionality. The partial-tracers are then composed to yield a single tracer with the composite functionality of the partial-tracers. Stepwise enhancement provides an alternative to stepwise reenement and iterative enhancement in scenarios where the \natural" subproblems do not correspond to distinct subprograms. This typically happens, as in the case of a Prolog tracer, when diierent subprograms require the same program ow due to the contraint that their computations be performed simultaneously. Stepwise enhancement eases the development and extension of a tracer, and also makes it customizable. A user may customize her tracer by composing only the partial-tracers providing the desired functionality. New features may be added by developing a partial-tracer that provides the desired behavior and composing it with other partial-tracers.
منابع مشابه
Stepwise Enhancement and Higher-Order Programming in Prolog
This paper presents two views of stepwise enhancement, one a pragmatic syntax-based approach and the other a semantic approach based on higher-order functions and relating to shape and polytypism. The approaches are outlined, and the perhaps surprisingly close relationship between the two described. By combining the advantages of both approaches, it is shown how more code in both functional and...
متن کاملA Higher Order Reconstruction of Stepwise Enhancement
In the last couple of years, there has been renewed interest in systematic methods for the construction of Prolog programs, for example (Gegg-Harrison, 1995), (Kirschenbaum et al., 1996), (Sterling and Yalçinalp, 1996), and (Vasconcelos and Fuchs, 1995). This paper loosely characterises the progression of approaches that have been offered for systematic construction of logic (usually Prolog) pr...
متن کاملLaminar mixing of high-viscous fluids by a cylindrical chaotic mixer
Laminar mixing of glycerin in a chaotic mixer is carried by means of the blob deformation method. The mixer was a cylindrical vessel with two rotational blades which move along two different circular paths with a stepwise motion protocol. The flow visualization was performed by marking of the free surface of the flow with a tracer. The effects of controlling parameters such as rotational speed ...
متن کاملApplying Techniques to Skeletons
This paper concerns our research on developing a theory and methodology appropriate for systematically building complicated Prolog programs. Programs are constructed procedurally from standard components. We identify skeletons, basic Prolog programs with a well-understood control ow, and techniques, standard Prolog programming practices, as basic components. Applying a technique to a skeleton c...
متن کاملTechniques for Verifying Prolog Implementations
This paper presents some techniques that reduce the complexity of the verification of Prolog implementations. Two key techniques are stepwise refinements and bisimulation. The method of stepwise refinements captures various optimization techniques employed in the implementation process. The correctness of each refinement is justified using a notion called bisimulation. Our definition of bisimul...
متن کاملذخیره در منابع من
با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید
عنوان ژورنال:
دوره شماره
صفحات -
تاریخ انتشار 1995